<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <meta http-equiv="X-UA-Compatible" content="ie=edge">
    <title>Document</title>
    <!-- 注意 vue-resource 依赖于Vue 所以先后顺序不能反 -->
    <!-- this.$http.jsonp -->
    <script src="https://cdn.jsdelivr.net/npm/vue/dist/vue.js"></script>
    <script src="https://cdn.bootcss.com/vue-resource/1.5.1/vue-resource.js"></script>
</head>

<body>
    <div id="app">
        <my-com1></my-com1>
    </div>

    <template id="tmpl">
        <div>
            <h1>这是全局组件----{{msg}}</h1>
        </div>
    </template>

    <script>
        // 1. 组件可以有自己的data数据
        // 2. 组件的data和实例的data有点不一样，实例中的data可以为一个对象，但是组件中的data必须是一个方法
        // 3. 组建中的data除了必须为一个方法外，这个方法内部，还必须返回一个对象才学
        // 4. 组件中的data数据，使用方式，和实例中data使用方式完全一样！！！
        Vue.component('myCom1', {
            template: '#tmpl',
            data: function() {
                return {
                    msg: '这是组件中data定义的数据'
                }
            }
        })
        var vm = new Vue({
            el: '#app',
            data: {},
            methods: {}
        })
    </script>
</body>

</html>